package com.middlegroup.pay.entity;

import com.baomidou.mybatisplus.enums.IdType;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import com.middlegroup.common.enums.ServiceType;
import com.middlegroup.common.mybatisplus.BaseEntity;
import lombok.Data;

import java.io.Serializable;

/**
 * <p>
 * 出款订单表
 * </p>
 *
 * @author pc123
 * @since 2019-01-04
 */
@TableName("t_out_bills")
@Data
public class OutBills extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 商户编号
     */
    private String merchantCode;

    /**
     * 商户订单表
     */
    @TableField("merchant_bill_no")
    private String merchantBillNo;
    /**
     * 中台传给上游渠道的商户订单号
     */
    @TableField("bill_no")
    private String billNo;
    /**
     * 上游渠道返回的交易流水
     */
    @TableField("trans_no")
    private String transNo;
    /**
     * 通道编码
     */
    @TableField("channel_code")
    private String channelCode;
    /**
     * 订单状态
            0：处理中
            1：成功
            2：失败
            3：超时（建议与0合并）
     */
    private Integer status;
    /**
     * 订单金额
     */
    private BigDecimal amount;
    /**
     * 用户姓名加密后
     */
    private String name;
    /**
     * 身份证加密后
     */
    @TableField("id_card")
    private String idCard;
    /**
     * 银行预留手机号加密后
     */
    private String phone;
    /**
     * 交易卡号加密后
     */
    @TableField("card_no")
    private String cardNo;
    /**
     * 用户姓名掩码
     */
    @TableField("name_enc")
    private String nameEnc;
    /**
     * 用户身份证掩码
     */
    @TableField("id_card_enc")
    private String idCardEnc;
    /**
     * 银行预留手机号掩码
     */
    @TableField("phone_enc")
    private String phoneEnc;
    /**
     * 交易卡号掩码
     */
    @TableField("card_no_enc")
    private String cardNoEnc;

    private String msg;

    private String subjectCode;

    private ServiceType serviceType;

}
